lambda learner
Lambda Learner: Nearline learning on data streams
A common challenge for production machine learning systems is reacting to change. The world can change quickly, particularly on a social network. This can range from sweeping changes at the scale of the whole economy (like a pandemic) down to everyday occurrences, such as a dormant member returning to LinkedIn in search of a new job. It's typically not enough to train and deploy a model just once; we need to keep it fresh, while balancing model complexity, training time, and computational costs. Ideally, the instant new data becomes available, we would incorporate it into the model.
Lambda Learner: Fast Incremental Learning on Data Streams
Ramanath, Rohan, Salomatin, Konstantin, Gee, Jeffrey D., Talanine, Kirill, Dalal, Onkar, Polatkan, Gungor, Smoot, Sara, Kumar, Deepak
One of the most well-established applications of machine learning is in deciding what content to show website visitors. When observation data comes from high-velocity, user-generated data streams, machine learning methods perform a balancing act between model complexity, training time, and computational costs. Furthermore, when model freshness is critical, the training of models becomes time-constrained. Parallelized batch offline training, although horizontally scalable, is often not time-considerate or cost-effective. In this paper, we propose Lambda Learner, a new framework for training models by incremental updates in response to mini-batches from data streams. We show that the resulting model of our framework closely estimates a periodically updated model trained on offline data and outperforms it when model updates are time-sensitive. We provide theoretical proof that the incremental learning updates improve the loss-function over a stale batch model. We present a large-scale deployment on the sponsored content platform for a large social network, serving hundreds of millions of users across different channels (e.g., desktop, mobile). We address challenges and complexities from both algorithms and infrastructure perspectives, and illustrate the system details for computation, storage, and streaming production of training data.